/*
 * Renesas SCP/MCP Software
 * Copyright (c) 2020-2021, Renesas Electronics Corporation. All rights
 * reserved.
 *
 * SPDX-License-Identifier: BSD-3-Clause
 */

#ifndef RCAR_SCMI_ID_H
#define RCAR_SCMI_ID_H

/* SCMI PowerDomain Domain indexes */
enum rcar_scmi_pd_domain_id {
    PD_RCAR_CLUS0CORE0 = 0,
    PD_RCAR_CLUS0CORE1,
    PD_RCAR_CLUS0CORE2,
    PD_RCAR_CLUS0CORE3,
    PD_RCAR_CLUS1CORE0,
    PD_RCAR_CLUS1CORE1,
    PD_RCAR_CLUS1CORE2,
    PD_RCAR_CLUS1CORE3,
    PD_RCAR_CLUSTER0,
    PD_RCAR_CLUSTER1,
    PD_RCAR_A3IR,
    PD_RCAR_3DGE,
    PD_RCAR_3DGD,
    PD_RCAR_3DGC,
    PD_RCAR_3DGB,
    PD_RCAR_3DGA,
    PD_RCAR_A2VC1,
    PD_RCAR_A3VC,
    PD_RCAR_CR7,
    PD_RCAR_A3VP,
    PD_RCAR_PMIC_DDR_BKUP,
    PD_RCAR_ALWAYS_ON,
    PD_RCAR_COUNT,
};

/* SCMI Clock indexes */
enum rcar_scmi_clock_id {
    CLOCK_RCAR_ZTR,
    CLOCK_RCAR_ZTRD2,
    CLOCK_RCAR_ZT,
    CLOCK_RCAR_ZX,
    CLOCK_RCAR_S0D1,
    CLOCK_RCAR_S0D2,
    CLOCK_RCAR_S0D3,
    CLOCK_RCAR_S0D4,
    CLOCK_RCAR_S0D6,
    CLOCK_RCAR_S0D8,
    CLOCK_RCAR_S0D12,
    CLOCK_RCAR_S1D1,
    CLOCK_RCAR_S1D2,
    CLOCK_RCAR_S1D4,
    CLOCK_RCAR_S2D1,
    CLOCK_RCAR_S2D2,
    CLOCK_RCAR_S2D4,
    CLOCK_RCAR_S3D1,
    CLOCK_RCAR_S3D2,
    CLOCK_RCAR_S3D4,
    CLOCK_RCAR_SD0,
    CLOCK_RCAR_SD1,
    CLOCK_RCAR_SD2,
    CLOCK_RCAR_SD3,
    CLOCK_RCAR_CL,
    CLOCK_RCAR_CR,
    CLOCK_RCAR_CP,
    CLOCK_RCAR_CPEX,
    CLOCK_RCAR_CANFD,
    CLOCK_RCAR_CSI0,
    CLOCK_RCAR_MSO,
    CLOCK_RCAR_HDMI,
    CLOCK_RCAR_OSC,
    CLOCK_RCAR_R,
    CLOCK_RCAR_S0,
    CLOCK_RCAR_S1,
    CLOCK_RCAR_S2,
    CLOCK_RCAR_S3,
    CLOCK_RCAR_SDSRC,
    CLOCK_RCAR_RINT,
    CLOCK_RCAR_FDP1_1,
    CLOCK_RCAR_FDP1_0,
    CLOCK_RCAR_SCIF5,
    CLOCK_RCAR_SCIF4,
    CLOCK_RCAR_SCIF3,
    CLOCK_RCAR_SCIF1,
    CLOCK_RCAR_SCIF0,
    CLOCK_RCAR_MSIOF3,
    CLOCK_RCAR_MSIOF2,
    CLOCK_RCAR_MSIOF1,
    CLOCK_RCAR_MSIOF0,
    CLOCK_RCAR_SYS_DMAC2,
    CLOCK_RCAR_SYS_DMAC1,
    CLOCK_RCAR_SYS_DMAC0,
    CLOCK_RCAR_SCEG_PUB,
    CLOCK_RCAR_CMT3,
    CLOCK_RCAR_CMT2,
    CLOCK_RCAR_CMT1,
    CLOCK_RCAR_CMT0,
    CLOCK_RCAR_TPU0,
    CLOCK_RCAR_SCIF2,
    CLOCK_RCAR_SDIF3,
    CLOCK_RCAR_SDIF2,
    CLOCK_RCAR_SDIF1,
    CLOCK_RCAR_SDIF0,
    CLOCK_RCAR_PCIE1,
    CLOCK_RCAR_PCIE0,
    CLOCK_RCAR_USB_DMAC30,
    CLOCK_RCAR_USB3_IF0,
    CLOCK_RCAR_USB_DMAC31,
    CLOCK_RCAR_USB_DMAC0,
    CLOCK_RCAR_USB_DMAC1,
    CLOCK_RCAR_RWDT,
    CLOCK_RCAR_INTC_EX,
    CLOCK_RCAR_INTC_AP,
    CLOCK_RCAR_AUDMAC1,
    CLOCK_RCAR_AUDMAC0,
    CLOCK_RCAR_DRIF31,
    CLOCK_RCAR_DRIF30,
    CLOCK_RCAR_DRIF21,
    CLOCK_RCAR_DRIF20,
    CLOCK_RCAR_DRIF11,
    CLOCK_RCAR_DRIF10,
    CLOCK_RCAR_DRIF01,
    CLOCK_RCAR_DRIF00,
    CLOCK_RCAR_HSCIF4,
    CLOCK_RCAR_HSCIF3,
    CLOCK_RCAR_HSCIF2,
    CLOCK_RCAR_HSCIF1,
    CLOCK_RCAR_HSCIF0,
    CLOCK_RCAR_THERMAL,
    CLOCK_RCAR_PWM,
    CLOCK_RCAR_FCPVD2,
    CLOCK_RCAR_FCPVD1,
    CLOCK_RCAR_FCPVD0,
    CLOCK_RCAR_FCPVB1,
    CLOCK_RCAR_FCPVB0,
    CLOCK_RCAR_FCPVI1,
    CLOCK_RCAR_FCPVI0,
    CLOCK_RCAR_FCPF1,
    CLOCK_RCAR_FCPF0,
    CLOCK_RCAR_FCPCS,
    CLOCK_RCAR_VSPD2,
    CLOCK_RCAR_VSPD1,
    CLOCK_RCAR_VSPD0,
    CLOCK_RCAR_VSPBC,
    CLOCK_RCAR_VSPBD,
    CLOCK_RCAR_VSPI1,
    CLOCK_RCAR_VSPI0,
    CLOCK_RCAR_EHCI3,
    CLOCK_RCAR_EHCI2,
    CLOCK_RCAR_EHCI1,
    CLOCK_RCAR_EHCI0,
    CLOCK_RCAR_HSUSB,
    CLOCK_RCAR_HSUSB3,
    CLOCK_RCAR_CMM3,
    CLOCK_RCAR_CMM2,
    CLOCK_RCAR_CMM1,
    CLOCK_RCAR_CMM0,
    CLOCK_RCAR_CSI20,
    CLOCK_RCAR_CSI41,
    CLOCK_RCAR_CSI40,
    CLOCK_RCAR_DU3,
    CLOCK_RCAR_DU2,
    CLOCK_RCAR_DU1,
    CLOCK_RCAR_DU0,
    CLOCK_RCAR_LVDS,
    CLOCK_RCAR_HDMI1,
    CLOCK_RCAR_HDMI0,
    CLOCK_RCAR_VIN7,
    CLOCK_RCAR_VIN6,
    CLOCK_RCAR_VIN5,
    CLOCK_RCAR_VIN4,
    CLOCK_RCAR_VIN3,
    CLOCK_RCAR_VIN2,
    CLOCK_RCAR_VIN1,
    CLOCK_RCAR_VIN0,
    CLOCK_RCAR_ETHERAVB,
    CLOCK_RCAR_SATA0,
    CLOCK_RCAR_IMR3,
    CLOCK_RCAR_IMR2,
    CLOCK_RCAR_IMR1,
    CLOCK_RCAR_IMR0,
    CLOCK_RCAR_GPIO7,
    CLOCK_RCAR_GPIO6,
    CLOCK_RCAR_GPIO5,
    CLOCK_RCAR_GPIO4,
    CLOCK_RCAR_GPIO3,
    CLOCK_RCAR_GPIO2,
    CLOCK_RCAR_GPIO1,
    CLOCK_RCAR_GPIO0,
    CLOCK_RCAR_CAN_FD,
    CLOCK_RCAR_CAN_IF1,
    CLOCK_RCAR_CAN_IF0,
    CLOCK_RCAR_I2C6,
    CLOCK_RCAR_I2C5,
    CLOCK_RCAR_I2C_DVFS,
    CLOCK_RCAR_I2C4,
    CLOCK_RCAR_I2C3,
    CLOCK_RCAR_I2C2,
    CLOCK_RCAR_I2C1,
    CLOCK_RCAR_I2C0,
    CLOCK_RCAR_SSI_ALL,
    CLOCK_RCAR_SSI9,
    CLOCK_RCAR_SSI8,
    CLOCK_RCAR_SSI7,
    CLOCK_RCAR_SSI6,
    CLOCK_RCAR_SSI5,
    CLOCK_RCAR_SSI4,
    CLOCK_RCAR_SSI3,
    CLOCK_RCAR_SSI2,
    CLOCK_RCAR_SSI1,
    CLOCK_RCAR_SSI0,
    CLOCK_RCAR_SCU_ALL,
    CLOCK_RCAR_SCU_DVC1,
    CLOCK_RCAR_SCU_DVC0,
    CLOCK_RCAR_SCU_CTU0_MIX1,
    CLOCK_RCAR_SCU_CTU0_MIX0,
    CLOCK_RCAR_SCU_SRC9,
    CLOCK_RCAR_SCU_SRC8,
    CLOCK_RCAR_SCU_SRC7,
    CLOCK_RCAR_SCU_SRC6,
    CLOCK_RCAR_SCU_SRC5,
    CLOCK_RCAR_SCU_SRC4,
    CLOCK_RCAR_SCU_SRC3,
    CLOCK_RCAR_SCU_SRC2,
    CLOCK_RCAR_SCU_SRC1,
    CLOCK_RCAR_SCU_SRC0,
    CLOCK_RCAR_X12_CLK,
    CLOCK_RCAR_X21_CLK,
    CLOCK_RCAR_X22_CLK,
    CLOCK_RCAR_X23_CLK,
    CLOCK_RCAR_AUDIO_CLKOUT,
    CLOCK_RCAR_AUDIO_CLK_A,
    CLOCK_RCAR_AUDIO_CLK_C,
    CLOCK_RCAR_CAN_CLK,
    CLOCK_RCAR_PCIE_BUS_CLK,
    CLOCK_RCAR_SCIF_CLK,
    CLOCK_RCAR_USB3S0_CLK,
    CLOCK_RCAR_USB_EXTAL_CLK,
    CLOCK_RCAR_COUNT,
};

/* SCMI Sensor indexes */
enum rcar_scmi_sensor_id {
    SENSOR_RCAR_COUNT,
};

/* SCMI Reset indexes */
enum rcar_scmi_reset_id {
    RESET_RCAR_FDP1_1,
    RESET_RCAR_FDP1_0,
    RESET_RCAR_SCIF5,
    RESET_RCAR_SCIF4,
    RESET_RCAR_SCIF3,
    RESET_RCAR_SCIF1,
    RESET_RCAR_SCIF0,
    RESET_RCAR_MSIOF3,
    RESET_RCAR_MSIOF2,
    RESET_RCAR_MSIOF1,
    RESET_RCAR_MSIOF0,
    RESET_RCAR_SYS_DMAC2,
    RESET_RCAR_SYS_DMAC1,
    RESET_RCAR_SYS_DMAC0,
    RESET_RCAR_SCEG_PUB,
    RESET_RCAR_CMT3,
    RESET_RCAR_CMT2,
    RESET_RCAR_CMT1,
    RESET_RCAR_CMT0,
    RESET_RCAR_TPU0,
    RESET_RCAR_SCIF2,
    RESET_RCAR_SDIF3,
    RESET_RCAR_SDIF2,
    RESET_RCAR_SDIF1,
    RESET_RCAR_SDIF0,
    RESET_RCAR_PCIE1,
    RESET_RCAR_PCIE0,
    RESET_RCAR_USB_DMAC30,
    RESET_RCAR_USB3_IF0,
    RESET_RCAR_USB_DMAC31,
    RESET_RCAR_USB_DMAC0,
    RESET_RCAR_USB_DMAC1,
    RESET_RCAR_RWDT,
    RESET_RCAR_INTC_EX,
    RESET_RCAR_INTC_AP,
    RESET_RCAR_AUDMAC1,
    RESET_RCAR_AUDMAC0,
    RESET_RCAR_DRIF31,
    RESET_RCAR_DRIF30,
    RESET_RCAR_DRIF21,
    RESET_RCAR_DRIF20,
    RESET_RCAR_DRIF11,
    RESET_RCAR_DRIF10,
    RESET_RCAR_DRIF01,
    RESET_RCAR_DRIF00,
    RESET_RCAR_HSCIF4,
    RESET_RCAR_HSCIF3,
    RESET_RCAR_HSCIF2,
    RESET_RCAR_HSCIF1,
    RESET_RCAR_HSCIF0,
    RESET_RCAR_THERMAL,
    RESET_RCAR_PWM,
    RESET_RCAR_FCPVD2,
    RESET_RCAR_FCPVD1,
    RESET_RCAR_FCPVD0,
    RESET_RCAR_FCPVB1,
    RESET_RCAR_FCPVB0,
    RESET_RCAR_FCPVI1,
    RESET_RCAR_FCPVI0,
    RESET_RCAR_FCPF1,
    RESET_RCAR_FCPF0,
    RESET_RCAR_FCPCS,
    RESET_RCAR_VSPD2,
    RESET_RCAR_VSPD1,
    RESET_RCAR_VSPD0,
    RESET_RCAR_VSPBC,
    RESET_RCAR_VSPBD,
    RESET_RCAR_VSPI1,
    RESET_RCAR_VSPI0,
    RESET_RCAR_EHCI3,
    RESET_RCAR_EHCI2,
    RESET_RCAR_EHCI1,
    RESET_RCAR_EHCI0,
    RESET_RCAR_HSUSB,
    RESET_RCAR_HSUSB3,
    RESET_RCAR_CMM3,
    RESET_RCAR_CMM2,
    RESET_RCAR_CMM1,
    RESET_RCAR_CMM0,
    RESET_RCAR_CSI20,
    RESET_RCAR_CSI41,
    RESET_RCAR_CSI40,
    RESET_RCAR_DU3,
    RESET_RCAR_DU2,
    RESET_RCAR_DU1,
    RESET_RCAR_DU0,
    RESET_RCAR_LVDS,
    RESET_RCAR_HDMI1,
    RESET_RCAR_HDMI0,
    RESET_RCAR_VIN7,
    RESET_RCAR_VIN6,
    RESET_RCAR_VIN5,
    RESET_RCAR_VIN4,
    RESET_RCAR_VIN3,
    RESET_RCAR_VIN2,
    RESET_RCAR_VIN1,
    RESET_RCAR_VIN0,
    RESET_RCAR_ETHERAVB,
    RESET_RCAR_SATA0,
    RESET_RCAR_IMR3,
    RESET_RCAR_IMR2,
    RESET_RCAR_IMR1,
    RESET_RCAR_IMR0,
    RESET_RCAR_GPIO7,
    RESET_RCAR_GPIO6,
    RESET_RCAR_GPIO5,
    RESET_RCAR_GPIO4,
    RESET_RCAR_GPIO3,
    RESET_RCAR_GPIO2,
    RESET_RCAR_GPIO1,
    RESET_RCAR_GPIO0,
    RESET_RCAR_CAN_FD,
    RESET_RCAR_CAN_IF1,
    RESET_RCAR_CAN_IF0,
    RESET_RCAR_I2C6,
    RESET_RCAR_I2C5,
    RESET_RCAR_I2C_DVFS,
    RESET_RCAR_I2C4,
    RESET_RCAR_I2C3,
    RESET_RCAR_I2C2,
    RESET_RCAR_I2C1,
    RESET_RCAR_I2C0,
    RESET_RCAR_SSI_ALL,
    RESET_RCAR_SSI9,
    RESET_RCAR_SSI8,
    RESET_RCAR_SSI7,
    RESET_RCAR_SSI6,
    RESET_RCAR_SSI5,
    RESET_RCAR_SSI4,
    RESET_RCAR_SSI3,
    RESET_RCAR_SSI2,
    RESET_RCAR_SSI1,
    RESET_RCAR_SSI0,
    RESET_RCAR_COUNT,
};
#endif /* RCAR_SCMI_ID_H */
